#include<stdio.h>
#include<string.h>
#include<fcntl.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<unistd.h>

int main()
{
  printf("hello printf\n");
  fprintf(stdout,"hello fprintf\n");

  const char* s = "hello write\n";
  write(1,s,strlen(s));

  fork();
  return 0;
}

//int main()
//{
//  close(1);
//  int fd = open("log.txt",O_CREAT | O_WRONLY | O_APPEND, 0666);
//  //dup2(fd,1);
//  printf("fd: %d\n",fd);
//  printf("hello jy\n");
//  printf("hello jy\n");
//  fflush(stdout);
//  //fprintf(stdout,"hello\n");
//  const char* s = "hello\n"; 
//  write(fd,s,strlen(s));
//  close(fd);
//  return 0;
//}
////int main()
//{
//  printf("stdin: %d\n",stdin->_fileno);
//  printf("stdout: %d\n",stdout->_fileno);
//  printf("stderr: %d\n",stderr->_fileno);
//  printf("\n");
//  int fd = open("log.txt",O_CREAT | O_WRONLY,0666);
//  printf("fd: %d\n",fd);
//  if(fd < 0)
//  {
//    perror("open");
//    return 1;
//  }
//  const char* s = "hello jy";
//  write(fd,s,strlen(s));
//  close(fd);
//  return 0;
//}
//
//
////int main(int argc, char* argv[])
////{
////    if(argc != 2)
////    {
////      printf("Usage: %s filename",argv[0]);
////      return 1;
////    }
////    FILE *fp = fopen(argv[1],"r");
////    if(NULL == fp)
//    {
//      perror("fopen");
//      return 2;
//    }
//    while(1)
//    {
//      char buffer[128];
//      memset(buffer,0,sizeof(buffer));
//      int n = fread(buffer,1,sizeof(buffer)-1,fp);
//      if(n > 0)
//      {
//        printf("%s",buffer);
//      }
//      if(feof(fp))
//        break;
//    }
//    fclose(fp);
//    return 0;
// }
